<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
  "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
  <!ENTITY % general-entities SYSTEM "../general.ent">
  %general-entities;
]>

<sect1 id="ch-system-man-db" role="wrap">
  <?dbhtml filename="man-db.html"?>

  <sect1info condition="script">
    <productname>man-db</productname>
    <productnumber>&man-db-version;</productnumber>
    <address>&man-db-url;</address>
  </sect1info>

  <title>Man-DB-&man-db-version;</title>

  <indexterm zone="ch-system-man-db">
    <primary sortas="a-Man-DB">Man-DB</primary>
  </indexterm>

  <sect2 role="package">
    <title/>

    <para>Пакет Man-DB содержит программы для поиска и просмотра справочных страниц.</para>

    <segmentedlist>
      <segtitle>&buildtime;</segtitle>
      <segtitle>&diskspace;</segtitle>

      <seglistitem>
        <seg>&man-db-ch6-sbu;</seg>
        <seg>&man-db-ch6-du;</seg>
      </seglistitem>
    </segmentedlist>

  </sect2>

  <sect2 role="installation">
    <title>Установка пакета Man-DB</title>

    <para>Подготовьте пакет Man-DB к компиляции:</para>

<screen revision="systemd"><userinput remap="configure">sed -i '/find/s@/usr@@' init/systemd/man-db.service.in

./configure --prefix=/usr                        \
            --docdir=/usr/share/doc/man-db-&man-db-version; \
            --sysconfdir=/etc                    \
            --disable-setuid                     \
            --enable-cache-owner=bin             \
            --with-browser=/usr/bin/lynx         \
            --with-vgrind=/usr/bin/vgrind        \
            --with-grap=/usr/bin/grap</userinput></screen>

<screen revision="sysv"><userinput remap="configure">./configure --prefix=/usr                        \
            --docdir=/usr/share/doc/man-db-&man-db-version; \
            --sysconfdir=/etc                    \
            --disable-setuid                     \
            --enable-cache-owner=bin             \
            --with-browser=/usr/bin/lynx         \
            --with-vgrind=/usr/bin/vgrind        \
            --with-grap=/usr/bin/grap            \
            --with-systemdtmpfilesdir=           \
            --with-systemdsystemunitdir=</userinput></screen>

    <variablelist>
      <title>Значение параметров конфигурации:</title>

		 <varlistentry revision="systemd">
        <term><command>sed -i '/find/s@/usr@@' init/systemd/man-db.service.in</command></term>
        <listitem>
          <para>This changes a harcoded path to the <command>find</command>
          utility, which we install in
          <filename class="directory">/bin</filename>.</para>
        </listitem>
      </varlistentry>

      <varlistentry>
        <term><parameter>--disable-setuid</parameter></term>
        <listitem>
          <para>запрещает задавать программе <command>man</command> setuid пользователю <systemitem class="username">man</systemitem>.</para>
        </listitem>
      </varlistentry>

      <varlistentry>
        <term><parameter>--enable-cache-owner=bin</parameter></term>
        <listitem>
          <para>задает права доступа общесистемному кешу пользователю, который является владельцем каталога bin.</para>
        </listitem>
      </varlistentry>

      <varlistentry>
        <term><parameter>--with-...</parameter></term>
        <listitem>
          <para>Эти три аргумента используются для настройки программ по умолчанию.
          <command>lynx</command> текстовый веб-обозреватель (см. инструкции по установке в книге BLFS), <command>vgrind</command> преобразовывает исходные кода программ
			 в входные данные Groff и ,<command>grap</command> полезен для набора графов в документах Groff. Программы <command>vgrind</command> и <command>grap</command> обычно нужны для просмотра справочных страниц. Они не входят в состав книг LFS или BLFS, но вы можете установить их самостоятельно после
          сборки LFS если при желании.</para>
        </listitem>
      </varlistentry>

		<varlistentry revision="sysv">
        <term><parameter>--with-systemd...</parameter></term>
        <listitem>
          <para>These parameters prevent installing unneeded systemd
          directories and files.</para>
        </listitem>
      </varlistentry>

    </variablelist>

    <para>Скомпилируйте пакет:</para>

<screen><userinput remap="make">make</userinput></screen>

   <para>Для выполнения тестов, выполните команду:</para>

<screen><userinput remap="test">make check</userinput></screen>

    <para>Установите пакет:</para>

<screen><userinput remap="install">make install</userinput></screen>
<para revision="sysv">Remove an unwanted directory used for service files
    which would cause some BLFS packages to also install files there: </para>

<screen revision="sysv"><userinput remap="install">rm -rfv /lib/systemd</userinput></screen>
<!--
    <para revision="systemd">Remove a reference to a non-existent user:</para>

<screen revision="systemd"><userinput remap="install">sed -i "s:man man:root root:g" /usr/lib/tmpfiles.d/man-db.conf</userinput></screen>
-->
  </sect2>

  <sect2>
    <title>Страницы руководств LFS на других языках</title>

    <para>В нижеприведенной таблице показывает кодировку, которая допускается при использовании в Man-DB страницах, расположенных в каталоге
<filename class="directory">/usr/share/man/&lt;ll&gt;</filename>. Также, Man-DB правильно определит, если
    страницы руководств были установлены вручную в этот каталог в кодировке utf-8.</para>

    <!-- Origin: man-db-2.5.9/lib/encodings.c -->
    <table>
<title>Expected character encoding of legacy 8-bit manual pages</title>
      <?dbfo table-width="6in" ?>

      <tgroup cols="4">

        <colspec colnum="1" colwidth="1.5in"/>
        <colspec colnum="2" colwidth="1in"/>
        <colspec colnum="3" colwidth="2.5in"/>
        <colspec colnum="4" colwidth="1in"/>

        <thead>
          <row>
            <entry>Язык (код)</entry>
            <entry>Кодировка</entry>
            <entry>Язык (код)</entry>
            <entry>Кодировка</entry>
          </row>
        </thead>

        <tbody>
          <row>
            <entry>Danish (da)</entry>
            <entry>ISO-8859-1</entry>
            <entry>Croatian (hr)</entry>
            <entry>ISO-8859-2</entry>
          </row>
          <row>
            <entry>German (de)</entry>
            <entry>ISO-8859-1</entry>
            <entry>Hungarian (hu)</entry>
            <entry>ISO-8859-2</entry>
          </row>
          <row>
            <entry>English (en)</entry>
            <entry>ISO-8859-1</entry>
            <entry>Japanese (ja)</entry>
            <entry>EUC-JP</entry>
          </row>
          <row>
            <entry>Spanish (es)</entry>
            <entry>ISO-8859-1</entry>
            <entry>Korean (ko)</entry>
            <entry>EUC-KR</entry>
          </row>
          <row>
            <entry>Estonian (et)</entry>
            <entry>ISO-8859-1</entry>
            <entry>Lithuanian (lt)</entry>
            <entry>ISO-8859-13</entry>
          </row>
          <row>
            <entry>Finnish (fi)</entry>
            <entry>ISO-8859-1</entry>
            <entry>Latvian (lv)</entry>
            <entry>ISO-8859-13</entry>
          </row>
          <row>
            <entry>French (fr)</entry>
            <entry>ISO-8859-1</entry>
            <entry>Macedonian (mk)</entry>
            <entry>ISO-8859-5</entry>
          </row>
          <row>
            <entry>Irish (ga)</entry>
            <entry>ISO-8859-1</entry>
            <entry>Polish (pl)</entry>
            <entry>ISO-8859-2</entry>
          </row>
          <row>
            <entry>Galician (gl)</entry>
            <entry>ISO-8859-1</entry>
            <entry>Romanian (ro)</entry>
            <entry>ISO-8859-2</entry>
          </row>
          <row>
            <entry>Indonesian (id)</entry>
            <entry>ISO-8859-1</entry>
            <entry>Russian (ru)</entry>
            <entry>KOI8-R</entry>
          </row>
          <row>
            <entry>Icelandic (is)</entry>
            <entry>ISO-8859-1</entry>
            <entry>Slovak (sk)</entry>
            <entry>ISO-8859-2</entry>
          </row>
          <row>
            <entry>Italian (it)</entry>
            <entry>ISO-8859-1</entry>
            <entry>Slovenian (sl)</entry>
            <entry>ISO-8859-2</entry>
          </row>
          <row>
            <entry>Norwegian Bokmal (nb)</entry>
            <entry>ISO-8859-1</entry>
            <entry>Serbian Latin (sr@latin)</entry>
            <entry>ISO-8859-2</entry>
          </row>
          <row>
            <entry>Dutch (nl)</entry>
            <entry>ISO-8859-1</entry>
            <entry>Serbian (sr)</entry>
            <entry>ISO-8859-5</entry>
          </row>
          <row>
            <entry>Norwegian Nynorsk (nn)</entry>
            <entry>ISO-8859-1</entry>
            <entry>Turkish (tr)</entry>
            <entry>ISO-8859-9</entry>
          </row>
          <row>
            <entry>Norwegian (no)</entry>
            <entry>ISO-8859-1</entry>
            <entry>Ukrainian (uk)</entry>
            <entry>KOI8-U</entry>
          </row>
          <row>
            <entry>Portuguese (pt)</entry>
            <entry>ISO-8859-1</entry>
            <entry>Vietnamese (vi)</entry>
            <entry>TCVN5712-1</entry>
          </row>
          <row>
            <entry>Swedish (sv)</entry>
            <entry>ISO-8859-1</entry>
            <entry>Simplified Chinese (zh_CN)</entry>
            <entry>GBK</entry>
          </row>
          <row>
            <entry>Belarusian (be)</entry>
            <entry>CP1251</entry>
            <entry>Simplified Chinese, Singapore (zh_SG)</entry>
            <entry>GBK</entry>
          </row>
          <row>
            <entry>Bulgarian (bg)</entry>
            <entry>CP1251</entry>
            <entry>Traditional Chinese, Hong Kong (zh_HK)</entry>
            <entry>BIG5HKSCS</entry>
          </row>
          <row>
            <entry>Czech (cs)</entry>
            <entry>ISO-8859-2</entry>
            <entry>Traditional Chinese (zh_TW)</entry>
            <entry>BIG5</entry>
          </row>
          <row>
            <entry>Greek (el)</entry>
            <entry>ISO-8859-7</entry>
            <entry></entry>
            <entry></entry>
          </row>

        </tbody>

      </tgroup>

    </table>

    <note>
      <para>Справочные страницы на языках, отсутствующих в списке выше, не поддерживаются.</para>
    </note>

  </sect2>

  <sect2 id="contents-man-db" role="content">
    <title>Содержимое пакета Man-DB</title>

    <segmentedlist>
      <segtitle>Установленные программы</segtitle>
      <segtitle>Установленные библиотеки</segtitle>
      <segtitle>Установленные каталоги</segtitle>

      <seglistitem>
        <seg>accessdb, apropos (link to whatis), catman, lexgrog, man, mandb,
        manpath, and whatis</seg>
        <seg>libman.so and libmandb.so (both in /usr/lib/man-db)</seg>
        <seg>/usr/lib/man-db, /usr/libexec/man-db,
        and /usr/share/doc/man-db-&man-db-version;</seg>
      </seglistitem>
    </segmentedlist>

    <variablelist>
      <bridgehead renderas="sect3">Краткое описание</bridgehead>
      <?dbfo list-presentation="list"?>
      <?dbhtml list-presentation="table"?>

      <varlistentry id="accessdb">
        <term><command>accessdb</command></term>
        <listitem>
          <para>Dumps the <command>whatis</command> database contents in
          human-readable form</para>
          <indexterm zone="ch-system-man-db accessdb">
            <primary sortas="b-accessdb">accessdb</primary>
          </indexterm>
        </listitem>
      </varlistentry>

      <varlistentry id="apropos">
        <term><command>apropos</command></term>
        <listitem>
          <para>Searches the <command>whatis</command> database and displays
          the short descriptions of system commands that contain a given
          string</para>
          <indexterm zone="ch-system-man-db apropos">
            <primary sortas="b-apropos">apropos</primary>
          </indexterm>
        </listitem>
      </varlistentry>

      <varlistentry id="catman">
        <term><command>catman</command></term>
        <listitem>
          <para>Creates or updates the pre-formatted manual pages</para>
          <indexterm zone="ch-system-man-db catman">
            <primary sortas="b-catman">catman</primary>
          </indexterm>
        </listitem>
      </varlistentry>

      <varlistentry id="lexgrog">
        <term><command>lexgrog</command></term>
        <listitem>
          <para>Displays one-line summary information about a given manual
          page</para>
          <indexterm zone="ch-system-man-db lexgrog">
            <primary sortas="b-lexgrog">lexgrog</primary>
          </indexterm>
        </listitem>
      </varlistentry>

      <varlistentry id="man">
        <term><command>man</command></term>
        <listitem>
          <para>Formats and displays the requested manual page</para>
          <indexterm zone="ch-system-man-db man">
            <primary sortas="b-man">man</primary>
          </indexterm>
        </listitem>
      </varlistentry>

      <varlistentry id="mandb">
        <term><command>mandb</command></term>
        <listitem>
          <para>Creates or updates the <command>whatis</command> database</para>
          <indexterm zone="ch-system-man-db mandb">
            <primary sortas="b-mandb">mandb</primary>
          </indexterm>
        </listitem>
      </varlistentry>

      <varlistentry id="manpath">
        <term><command>manpath</command></term>
        <listitem>
          <para>Displays the contents of $MANPATH or (if $MANPATH is not set)
          a suitable search path based on the settings in man.conf and the
          user's environment</para>
          <indexterm zone="ch-system-man-db manpath">
            <primary sortas="b-manpath">manpath</primary>
          </indexterm>
        </listitem>
      </varlistentry>

      <varlistentry id="whatis">
        <term><command>whatis</command></term>
        <listitem>
          <para>Searches the <command>whatis</command> database and displays
          the short descriptions of system commands that contain the given
          keyword as a separate word</para>
          <indexterm zone="ch-system-man-db whatis">
            <primary sortas="b-whatis">whatis</primary>
          </indexterm>
        </listitem>
      </varlistentry>

      <varlistentry id="libman">
        <term><filename class="libraryfile">libman</filename></term>
        <listitem>
          <para>Содержит run-time support for <command>man</command></para>
          <indexterm zone="ch-system-man-db libman">
            <primary sortas="c-libman">libman</primary>
          </indexterm>
        </listitem>
      </varlistentry>

      <varlistentry id="libmandb">
        <term><filename class="libraryfile">libmandb</filename></term>
        <listitem>
          <para>Содержит run-time support for <command>man</command></para>
          <indexterm zone="ch-system-man-db libmandb">
            <primary sortas="c-libmandb">libmandb</primary>
          </indexterm>
        </listitem>
      </varlistentry>

    </variablelist>

  </sect2>

</sect1>
